关于如何用sass动态改变页面的方向?和sass动态变量的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于android动态改变屏幕方向、C#编程实现动态改变配置文件信息的方法、css–为什
关于如何用sass动态改变页面的方向?和sass 动态变量的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于android 动态改变屏幕方向、C#编程实现动态改变配置文件信息的方法、css – 为什么Firefox 16改变了线性渐变的方向?、css动态改变等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- 如何用sass动态改变页面的方向?(sass 动态变量)
- android 动态改变屏幕方向
- C#编程实现动态改变配置文件信息的方法
- css – 为什么Firefox 16改变了线性渐变的方向?
- css动态改变
如何用sass动态改变页面的方向?(sass 动态变量)
如何解决如何用sass动态改变页面的方向??
:root{
@if (direction=="rtl")// test direction of page from html tag by using sass
{
body{
text-align:right;
direction: rtl;
}
}
}
1.为什么这总是给 text-align:right 即使我改变方向总是 rtl 我使用 sass 条件 2.谁用sass动态改变lagueage
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
android 动态改变屏幕方向
android 动态改变屏幕方向
LANDSCAPE与PORTRAIT
范例说明
要如何通过程序控制Activity的显示方向?在Android中,若要通过程序改变屏幕显示的方向,必须要覆盖setRequestedOrientation()方法,而若要取得目前的屏幕方向,则需要访问getRequestedOrientation()方法。
本 范例为求简要示范更改做法,设计了一个按钮,当单击按钮的同时,判断当下的屏幕方向,例如竖排(PORTRAIT),则将其更改为横排 (LANDSCAPE);若为横排(LANDSCAPE),则将其更改为竖排(PORTRAIT),范例非常简单。图5-25所示是运行的结果。
本程序重写setRequestedOrientation()方法,其目的是为了要捕捉设置屏幕方向的同时所触发的事件,并在更改的时候,以Toast显示要更改的方向。
范例程序
src/irdc.ex05_22/EX05_22.java
程 序一开始(onCreate)先判断getRequestedOrientation()的值是否为-1,若此值为-1,表示在Activity属性里没 有设置Android:screenOrientation的值,这意味着即使单击按钮,也无法判断屏幕的方向,不会进行更改方向的事件了。
在 被覆盖的setRequestedOrientation()事件里,会传入要转换的方向常数(requestedOrientation),其值为整数 类型,有以SCREEN_ORIENTATION_PORTRAIT及SCREEN_ORIENTATION_LAN- DSCAPE两个指定常数。
/* import程序略 */
import android.content.pm.ActivityInfo;
import android.view.Display;
public class EX05_22 extends Activity
{
private TextView mTextView01;
private Button mButton01;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton01 = (Button)findViewById(R.id.myButton1);
mTextView01 = (TextView)findViewById(R.id.myTextView1);
if(getRequestedOrientation()==-1)
{
mTextView01.setText(getResources().getText
(R.string.str_err_1001));
}
/* 当单击按钮旋转屏幕画面 */
mButton01.setOnClickListener(new Button.OnClickListener()
{
@Override
public void onClick(View arg0)
{
/* 方法一:重写getRequestedOrientation */
/* 若无法取得screenOrientation属性 */
if(getRequestedOrientation()==-1)
{
/* 提示无法进行画面旋转功能,因无法判别Orientation */
mTextView01.setText(getResources().getText
(R.string.str_err_1001));
}
else
{
if(getRequestedOrientation()==
ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
{
/* 若目前为横排,则更改为竖排呈现 */
setRequestedOrientation
(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
else if(getRequestedOrientation()==
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)
{
/* 若目前为竖排,则更改为横排呈现 */
setRequestedOrientation
(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
}
}
});
}
@Override
public void setRequestedOrientation(int requestedOrientation)
{
// TODO Auto-generated method stub
/* 判断要更改的方向,以Toast提示 */
switch(requestedOrientation)
{
/* 更改为LANDSCAPE */
case (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE):
mMakeTextToast
(
getResources().getText(R.string.str_msg1).toString(),
false
);
break;
/* 更改为PORTRAIT */
case (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT):
mMakeTextToast
(
getResources().getText(R.string.str_msg2).toString(),
false
);
break;
}
super.setRequestedOrientation(requestedOrientation);
}
@Override
public int getRequestedOrientation()
{
// TODO Auto-generated method stub
/* 此重写getRequestedOrientation方法,可取得目前屏幕的方向 */
return super.getRequestedOrientation();
}
public void mMakeTextToast(String str, boolean isLong)
{
if(isLong==true)
{
Toast.makeText(EX05_22.this, str, Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(EX05_22.this, str, Toast.LENGTH_SHORT).show();
}
}
}
AndroidManifest.xml
请留意在AndroidManifest.xml当中需要设置Activity的Android:screenOrientation属性,否则,程序将无法通过getRequestedOrientation()方法,来判断现在Activity的方向。
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="irdc.ex05_22"
android:versionCode="1"
android:versionName="1.0.0">
<application
android:icon="@drawable/icon"
android:label="@string/app_name">
<activity
android:name=".EX05_22"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
</manifest>
扩展学习
在上面的程序里,是以调用getRequestedOrientation()方法来判断单击按钮时,屏幕的显示方向虽然程序也可以进行判断,但以下方法可以适用在长宽比不一样的手机上。
/* 方法二:判断屏幕宽高比 */
final Display defaultDisplay =
getWindow().getWindowManager().getDefaultDisplay();
int h= defaultDisplay.getHeight();
int w = defaultDisplay.getWidth();
/* 此分辨率为按钮单击当下的分辨率 */
mTextView01.setText
(Integer.toString(h)+"x"+Integer.toString(w));
/if(w > h)
{
/* Landscape */
/* 重写Activity里的setRequestedOrientation()方法 */
setRequestedOrientation
(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
else
{
/* Portrait */
setRequestedOrientation
(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
C#编程实现动态改变配置文件信息的方法
本文实例讲述了C#编程实现动态改变配置文件信息的方法。分享给大家供大家参考,具体如下:
配置文件实际上就是一个XML文件,所以我们可以使用XmlDocument来进行操作。
代码如下:
static void Main(string[] args) { XmlDocument xDoc = new XmlDocument(); xDoc.Load("../../App.config");//加载xml文件 XmlNode xNode; XmlElement xElem1; XmlElement xElem2; xNode = xDoc.SelectSingleNode("//appSettings");//获取指定的xml子节点 xElem1 = (XmlElement)xNode.SelectSingleNode("//add[@key='type']");//获取子节点中指定的子节点 //如果能获取到节点,就修改节点的value值 if (xElem1 != null) { xElem1.SetAttribute("value","driver");//给节点中的value属性赋值(修改操作) } //如果不能获取到节点,就创建节点 else { xElem2 = xDoc.CreateElement("add"); xElem2.SetAttribute("key","type"); xElem2.SetAttribute("value","teacher"); xNode.AppendChild(xElem2); } xDoc.Save("../../App.config");//保存xml文档 Console.WriteLine("保存成功!"); }
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#常见控件用法教程》、《C#中XML文件操作技巧汇总》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#面向对象程序设计入门教程》及《C#程序设计之线程使用技巧总结》
希望本文所述对大家C#程序设计有所帮助。
css – 为什么Firefox 16改变了线性渐变的方向?
background-image: -moz-linear-gradient(90deg,#e8f0ff,#ffffff); background-image: -ms-linear-gradient(90deg,#ffffff); background-image: -o-linear-gradient(90deg,#ffffff); background-image: -webkit-linear-gradient(90deg,#ffffff); background-image: linear-gradient(90deg,#ffffff);
这用于导致从底部的#e8f0ff到顶部的#fff的线性渐变.
Post-Firefox 16(几天之前发布),渐变现在从#e8f0ff左侧到#fff在右边.
当我删除供应商特定的CSS并留下:
background-image: linear-gradient(90deg,#ffffff);
什么都没发生.但是当我删除该行并且只留下供应商特定的样式时:
background-image: -moz-linear-gradient(90deg,#ffffff);
它纠正了这个问题.
那么FF16的新功能呢Xdeg的价值观是否从一个新的方向开始,只有在某些情况下才被加入?我不知道为什么它会做180deg与两个或只有一般,但只有90deg,如果它只是供应商.
问题是,Firefox的这个新行为的具体细节是什么,以及FF16中现在有渐变错误方式的网站最广泛,最符合标准的解决方案?
解决方法
using angles
For the purpose of this argument,‘0deg’ points upward,and positive angles represent clockwise rotation,so ‘90deg’ point [sic] toward
the right.
-moz-linear-gradient
,on the other hand,uses polar coordinates(强调我的):
A last semantic curiosity still exists between the prefixed variants and the unprefixed proposal. Following the initial Apple proposal,the prefixed variants of the Syntax all uses the an
<angle>
defined like polar angles,that is with 0deg representing the East. To be coherent with the rest of CSS,the specification defines an angle with 0deg representing the north. To prevent sites using prefixed version of the property to get suddenly broken,even when adapting to the otherwise forward-compatible final Syntax,they keep the original angle deFinition (0deg = East). They will switch to the correct spec when unprefixing the property. Also,as they aren’t incompatible,Gecko supports,prefixed,both the Syntax with the to keyword and without. Here again,the Syntax without the keyword will be dropped when unprefixing.
css动态改变
css动态改变是一种常见的前端技术,它可以通过改变css样式表中的样式来改变网页的外观,使网页更加生动活泼。本文将介绍css动态改变的原理、实现方式以及实例应用。
一、原理
在HTML中,文本、图片、链接等元素的展现都是由CSS样式表来定义的。CSS样式表是一系列属性及其值的组合,它决定了网页上各个元素的显示效果。CSS样式表由选择器和声明组成,选择器指定了要应用样式的HTML元素,声明则描述了这些元素应该如何呈现。
CSS动态改变的原理其实很简单,就是通过JavaScript修改CSS样式表中指定元素的属性值来改变网页的外观。比如改变某一元素的背景颜色、字体大小、位置、边框样式等。由于JavaScript能够直接操作文档对象模型(DOM),可以很方便地获得页面内各个元素的节点信息和属性值,而这些信息正是改变CSS样式表所需的基本数据。
二、实现方式
立即学习“前端免费学习笔记(深入)”;
在HTML页面中应用CSS动态改变通常有以下几种实现方式:
1.使用JS属性操作
这种方法比较简单,直接通过JS修改元素的style属性即可。比如:
document.getElementById("myDiv").style.backgroundColor = "red";
这行代码就将ID为“myDiv”的HTML元素的背景颜色设置为红色。
2.使用CSS类切换
这种方法需要预先定义好多个CSS类,然后在JS代码中选取需要的类来改变元素样式。这种方式比较清晰,但需要额外制作多个CSS类。比如:
CSS定义:
.myClass {
background-color: yellow;
}
.myClass2 {
background-color: red;
}
JS代码:
document.getElementById("myDiv").className = "myClass2";
这行代码将ID为“myDiv”的HTML元素的类名从“myClass”切换为“myClass2”,从而改变了背景颜色。
3.使用StyleSheet对象
这种方法需要获得样式表对象,然后通过操作样式表中的规则来改变元素样式。这种方法灵活性比较高,但代码相对复杂。比如:
CSS定义:
.myClass {
background-color: yellow;
}
JS代码:
var styleSheet = document.styleSheets[0];
var rules = styleSheet.cssRules || styleSheet.rules;
rules[0].style.backgroundColor = "red";
这段代码先获得第一个样式表对象,然后获取样式规则集合rules。最后通过rules[0].style.backgroundColor将第一个规则的背景颜色改变为红色。
三、实例应用
1.更改元素背景颜色
通过以下代码可以实现当鼠标放置于某一元素上时,将元素背景颜色改为随机的颜色:
document.getElementById(''myElement'').addEventListener(''mouseover'', function () {
var r = Math.floor(Math.random() * 256); var g = Math.floor(Math.random() * 256); var b = Math.floor(Math.random() * 256); this.style.backgroundColor = ''rgb('' + r + '','' + g + '','' + b + '')'';
});
2.更改文本颜色
通过以下代码可以实现点击按钮时,将指定元素中文本的颜色一次轮流变为红、绿、蓝:
var colors = [''red'', ''green'', ''blue''];
var currentIndex = 0;
document.getElementById(''myButton'').addEventListener(''click'', function () {
document.getElementById(''myText'').style.color = colors[currentIndex];
currentIndex++;
if (currentIndex == colors.length) {
currentIndex = 0;
}
});
3.更改图片大小
通过以下代码可以实现点击图片时,将图片大小变为原来的两倍:
document.getElementById(''myImage'').addEventListener(''click'', function () {
var width = this.width * 2;
var height = this.height * 2;
this.style.width = width + ''px'';
this.style.height = height + ''px'';
});
以上三个实例展示了CSS动态改变的基本应用方法,可以通过改变不同的属性实现更多特效。需要注意的是,CSS动态改变虽然能够使网页更加生动有趣,但也要保持适度,不要对用户体验产生负面影响。
以上就是css动态改变的详细内容,更多请关注php中文网其它相关文章!
今天的关于如何用sass动态改变页面的方向?和sass 动态变量的分享已经结束,谢谢您的关注,如果想了解更多关于android 动态改变屏幕方向、C#编程实现动态改变配置文件信息的方法、css – 为什么Firefox 16改变了线性渐变的方向?、css动态改变的相关知识,请在本站进行查询。
本文标签: